package com.hlkj.pay.infrastructure.model.merchant;

import com.baomidou.mybatisplus.annotation.TableName;
import com.hlkj.framework.mybatis.core.dataobject.BaseDO;

import com.hlkj.pay.enums.MerchantEnum;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

/**
* 商户进件结算表
* @TableName t_merchant_access_card
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = true)
@TableName("t_merchant_access_card")
public class MerchantAccessCardDO extends BaseDO {

  
    /**
    * 进件id
    */
    private Long accessId;
    /**
    * 商户商户号
    */
    private String sn;
    /**
    * 账号类型 0：对公账户 1：对私法人账户 2：对私非法人账户
     * @see MerchantEnum.CARD_TYPE
    */
    private Integer type;
    /**
    * 账号名称
    */
    private String name;
    /**
    * 账号code
    */
    private String cardNo;
    /**
    * 银行编码
    */
    private String bankCode;
    /**
    * 银行名称
    */
    private String bankName;
    /**
    * 联行号
    */
    private String branchCode;
    /**
     * 对公卡账号名称
     */
    private String officialName;
    /**
     * 对公卡账号code
     */
    private String officialCardNo;
    /**
     * 对公卡银行编码
     */
    private String officialBankCode;
    /**
     * 对公卡银行名称
     */
    private String officialBankName;
    /**
     * 对公卡联行号
     */
    private String officialBranchCode;
    /**
     * 对公卡省份编码
     */
    private String officialProvinceCode;
    /**
     * 对公卡城市编码
     */
    private String officialCityCode;
    /**
     * 对公卡区域编码
     */
    private String officialAreaCode;
    /**
    * 证件类型
    */
    private String certType;
    /**
    * 身份证正面url
    */
    private String certFrontUrl;
    /**
    * 身份证反面url
    */
    private String certBackUrl;
    /**
    * 身份证号码
    */
    private String certNo;
    /**
    * 证件有效期类型 1：长期有效；0：非长期有效 
    */
    private Integer certValidityType;
    /**
    * 有效期开始日期
    */
    private String certBeginDate;
    /**
    * 有效期截止日期
    */
    private String certEndDate;
    /**
    * 省份编码
    */
    private String provinceCode;
    /**
    * 城市编码
    */
    private String cityCode;
    /**
    * 区域编码
    */
    private String areaCode;

    /**
    * 地址
    */
    private String address;
    /**
    * 银行卡绑定手机号
    */
    private String cardPhone;
    /**
    * 默认结算卡标志 1：是；0：否 
    */
    private Integer settleDefault;
    /**
     * 结算卡正面url
     */
    private String settleCardFrontUrl;
    /**
     * 手持身份证正面url
     */
    private String settleCertFrontUrl;
    /**
     * 手持身份证反面url
     */
    private String settleCertBackUrl;
    
    /**
     * 结算周期 字段不做进件使用，进件需取商户费率配置
     * 结算周期 字段不做进件使用，进件需取商户费率配置
     * 结算周期 字段不做进件使用，进件需取商户费率配置
     *
     * @see MerchantEnum.SETTLE_CYCLE
     */
    private Integer settleCycle;
    
    /**
     * 授权委托书url
     */
    private String authUrl;
    /**
     * 开户许可证编号
     */
    private String licenseNo;
    /**
     * 开户许可证url
     */
    private String licenseUrl;
}
